/*******************************************************************************
 * Copyright (c) 2011 LegSem.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the GNU Public License v3.0
 * which accompanies this distribution, and is available at
 * http://www.gnu.org/licenses/gpl-3.0.txt
 * 
 * Contributors:
 *     LegSem - initial API and implementation
 ******************************************************************************/
package com.legstar.eci.xmi.model;

import java.util.List;

import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
import com.thoughtworks.xstream.annotations.XStreamImplicit;

public class AggregateInstanceTD {

    @XStreamAsAttribute
    private String accessor;

    @XStreamAsAttribute
    private int contentSize;

    @XStreamAsAttribute
    private int offset;

    @XStreamAsAttribute
    private String platformInfo;

    @XStreamAsAttribute
    private int size;

    @XStreamAsAttribute
    private String id;

    @XStreamImplicit()
    private List < ArrayDescr > arrayDescrs;

    /** {@inheritDoc} */
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("[");
        sb.append("accessor" + ":'" + accessor + "'");
        sb.append(",");
        sb.append("contentSize" + ":" + contentSize + "");
        sb.append(",");
        sb.append("offset" + ":" + offset + "");
        sb.append(",");
        sb.append("platformInfo" + ":'" + platformInfo + "'");
        sb.append(",");
        sb.append("size" + ":" + size + "");
        sb.append(",");
        sb.append("id" + ":'" + id + "'");
        sb.append(",");
        sb.append("arrayDescrs" + ":'" + arrayDescrs + "'");
        sb.append("]");
        return sb.toString();
    }

    /**
     * @return the accessor
     */
    public String getAccessor() {
        return accessor;
    }

    /**
     * @return the contentSize
     */
    public int getContentSize() {
        return contentSize;
    }

    /**
     * @return the offset
     */
    public int getOffset() {
        return offset;
    }

    /**
     * @return the platformInfo
     */
    public String getPlatformInfo() {
        return platformInfo;
    }

    /**
     * @return the size
     */
    public int getSize() {
        return size;
    }

    /**
     * @return the id
     */
    public String getId() {
        return id;
    }

}
